package cn.chenhao.basic.mapper;
import cn.chenhao.basic.query.BasicQuery;
import java.util.List;

public interface BasicMapper<T> {

    void save(T t);

    /**
     * 更新一条数据
     */
    void update(T t);

    /**
     * 移除一条数据
     */
    void remove(Long id);

    /**
     * 根据id加载一条数据
     */
    T loadById(Long id);

    /**
     * 加载所有数据
     */
    List<T> loadAll();

    /**
     * 分页和高级查询
     */
    Integer queryCount(BasicQuery query);//查询总条数
    List<T> queryData(BasicQuery query);//查询当前的页数

    /**
     * 批量删除
     */
    void patchDelete(List<Long> ids);


}
